home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Commodore Disk User Volume 1 #2
/
Commodore_Disk_User_Vol.1_2_1988_-.d64
/
auto character
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
2KB
|
69 lines
10 rem auto character editor
20 rem ludo decock
30 rem lindenstraat 26
40 rem 8840 gits
50 rem belgium
100 a=a+1:ifa=1thenload"auto c",8,1
110 poke53280,0:poke53281,0:printchr$(147)chr$(14)chr$(9):poke2,0:poke787,0
130 print"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]"
140 print" [206]oluxe auto-character editor [146]"
150 print" ([195]) 1987 [198]lossoftware [146]"
160 print"[154][212]his program converts a character set"
170 print"with load address 12288, to a [206][207][204][213][216][197]"
180 print"character set."
190 print"[150][198]ilename character set (q)?":poke19,1:input"[158]";fi$
200 poke19,0:iflen(fi$)<1orlen(fi$)>16thengoto190
210 iffi$="q"thenprint"[147]":sys51200:goto250
220 print:print"[208]ut disk with characterset in drive !!"
230 print"[155] [208][210][197][211][211] [193] [203][197][217] [146]":poke198,0:wait198,1
240 sys57812fi$,8,1:poke780,0:sys65493
250 forx=12288to12295:pokex,255:nextx
260 forx=12288+(32*8)to12288+7+(32*8):pokex,0:nextx
270 forx=12288+(160*8)to12288+5+(160*8):pokex,252:nextx
280 forx=12288+6+(160*8)to12288+7+(160*8):pokex,0:nextx
290 iffi$<>"q"thenprint"[147]":goto330
300 printchr$(14)"[147][155][195]haracterset 1 or 2 ?":input"";k$
310 ifk$<>"1"andk$<>"2"thengoto300
320 ifk$="2"thenpoke787,10
330 print"[147][195]haracters double in [216], [217] or [206]ormal.":input"";d$
340 ifd$<>"x"andd$<>"y"andd$<>"n"thengoto330
350 ifd$="x"thenpoke2,10
360 ifd$="y"thenpoke2,100
370 print"[156] press a key [146]"
380 poke198,0:wait198,1
390 poke55,0:poke56,48:run400
400 ifpeek(2)=10thendx=8
410 ifpeek(2)=100thendy=8
420 ad=12288:ifpeek(787)=10thenad=14336
430 poke56334,1:poke53272,peek(53272)and240or(ad/1024):dimte$(36)
440 ifpeek(787)=10thenprintchr$(142)
450 forch=48to90:ifch>57andch<65thengoto650
460 print"[144]";chr$(ch):le=le+1
470 p=peek(1024):p=p*8:a=ad+p
480 print"[147][159]converting noluxe character set":forx=0to7:a(x+1)=peek(a+x):nextx
490 print"":forc=1to8:printtab(12);
500 forx=1to8
510 b=int(a(c)/2):b=b*2:b=a(c)-b
520 ifb=0thena$(x)=a$(x)+" [146]"
530 ifb=1thena$(x)=a$(x)+"@"
540 a(c)=int(a(c)/2)
550 nextx
560 fori=8to1step-1:printa$(i);
570 ifpeek(2)=10thenprinta$(i);
580 ifpeek(2)=100thennexti:print:fori=8to1step-1:printtab(12);a$(i);
590 a$(i)="":nexti:print
600 nextc
610 te$(le)="":fors=1316to(1324+dx):so=0
620 forss=stos+((dy+8)*40)step40:so=peek(ss):ifso=0thente$(le)=te$(le)+"1":nextss
630 ifso=160thente$(le)=te$(le)+"0":nextss
640 nexts
650 nextch
660 poke53272,peek(53272)and240or21
670 print"[147]saven disk : filename ?"
680 poke19,1:input"[154]";fi$:iflen(fi$)<0orlen(fi$)>13then670
690 poke19,0:fi$="k."+left$(fi$,len(fi$)):open2,8,2,fi$+",s,w"
700 print#2,8+dx:print#2,8+dy:forf=1to36
710 print#2,len(te$(f)):print#2,te$(f):nextf:close2:
720 print"[147]"
730 poke2,0:poke787,0:run110